#include<stdio.h>
#include<stdlib.h>
int main()
{
    /*
    **一维数组
    */
    /*int *p;
    int n,i;
    scanf("%d",&n);
    p=(int *)malloc(n*sizeof(int));
    if(p==NULL)
    puts("WRONG MEMERY");
    for(i=0;i<n;i++)
    scanf("%d",&p[i]);
    for(i=0;i<n;i++)
    printf("%d ",p[i]);
    free(p);*/
    /*
    **二维数组
    */
   int m,n;
   scanf("%d%d",&m,&n);
   int (*p)[n];
   p=(int (*)[n])malloc(n*m*sizeof(int));
   int i,j;
   for(i=0;i<m;i++)
   {
    for(j=0;j<n;j++)
    {
        scanf("%d",&p[i][j]);
    }
   }
   for(i=0;i<m;i++)
   {
    for(j=0;j<n;j++)
    {
        printf("%d ",p[i][j]);
    }
    printf("\n");
   }

   return 0;
}